import {
  ListPage,
  PageSearch,
  SearchInput,
  PageSearchItem,
  PageTable,
  PagePagination,
  TableColumn,
  FormPage,
  FormPageGroup,
  FormPageItem,
  AuthButtonGroup,
  AuthButton,
  AuthButtonColumn,
  AuthButtonInTable,
  DialogForm,
  DialogTable,
  ListPageTabs,
  ListPageAsyncTabs
} from 'custom/index'

// 列表页面 - ListPage
import ListPageTemplate from '@/components/list-page/ListPage.vue'
import PageSearchTemplate from '@/components/list-page/PageSearch.vue'
import PagePaginationTemplate from '@/components/list-page/PagePagination.vue'
import SearchInputTemplate from '@/components/list-page/SearchInput.vue'
import PageSearchItemTemplate from '@/components/list-page/PageSearchItem.vue'
import PageTableTemplate from '@/components/list-page/PageTable.vue'
import TableColumnTemplate from '@/components/list-page/TableColumn.vue'
import ListPageTabsTemplate from '@/components/list-page/ListPageTabs.vue'
import ListPageAsyncTabsTemplate from '@/components/list-page/ListPageAsyncTabs.vue'

// 表单页面 - FormPage
import FormPageTemplate from '@/components/form-page/FormPage.vue'
import FormPageGroupTemplate from '@/components/form-page/FormPageGroup.vue'
import FormPageItemTemplate  from '@/components/form-page/FormPageItem.vue'

// 权限控制 - 权限按钮等
import AuthButtonGroupTemplate from '@/components/auth/AuthButtonGroup.vue'
import AuthButtonTemplate from '@/components/auth/AuthButton.vue'
import AuthButtonColumnTemplate from '@/components/auth/AuthButtonColumn.vue'

// 弹窗 - 弹出内容
import DialogFormTemplate from '@/components/dialog/DialogForm.vue'
import DialogTableTemplate from '@/components/dialog/DialogTable.vue'

ListPage.setTemplate(ListPageTemplate)
PageSearch.setTemplate(PageSearchTemplate)
SearchInput.setTemplate(SearchInputTemplate)
PageSearchItem.setTemplate(PageSearchItemTemplate)
PageTable.setTemplate(PageTableTemplate)
PagePagination.setTemplate(PagePaginationTemplate)
TableColumn.setTemplate(TableColumnTemplate)
FormPage.setTemplate(FormPageTemplate)
FormPageGroup.setTemplate(FormPageGroupTemplate)
FormPageItem.setTemplate(FormPageItemTemplate)
AuthButtonGroup.setTemplate(AuthButtonGroupTemplate)
AuthButton.setTemplate(AuthButtonTemplate)
AuthButtonColumn.setTemplate(AuthButtonColumnTemplate)
AuthButtonInTable.setTemplate(AuthButtonTemplate)
DialogForm.setTemplate(DialogFormTemplate)
DialogTable.setTemplate(DialogTableTemplate)
ListPageTabs.setTemplate(ListPageTabsTemplate)
ListPageAsyncTabs.setTemplate(ListPageAsyncTabsTemplate)
